@tailwind base;
@tailwind components;
@tailwind utilities;

@layer utilities {
  .header-link[aria-current="page"]::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #fff;
    opacity: 0.1;
    font-size: 15px;
  }
  .header-link[aria-current="page"]::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 1px;
    width: 100%;
    background-color: #fff;
  }
  .hero {
    height: calc(100vh - 90px);
  }
  @media screen and (max-width: 1504px) {
    .hero {
      background-position: 70% 50%;
    }
  }
  @media screen and (max-width: 676px) {
    .hero {
      background-position: 65% 50%;
    }
  }

  .btn {
    /* display: inline-block; */
    outline: none;
    position: relative;
    padding: 12px 45px;
    border-radius: 10px;
    text-transform: capitalize;
    border: 0;
    cursor: pointer;
    transition: all 0.3s ease;
    @media screen and (min-width: 1921px) {
      padding: 24px 90px;
    }
  }

  .btn::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 10px;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    transition: all 0.3s ease;
    background-color: inherit;
    background-image: inherit;
  }

  .btn:hover {
    transform: translateY(-3px);
  }

  .btn:hover::after {
    transform: scale(1.4, 1.6);
    opacity: 0;
  }

  .btn:active {
    transform: translate(1px);
  }

  .btn__large {
    padding: 14px 35px;
    @media screen and (max-width: 1504px) {
      padding: 12px 20px;
      font-size: 15px;
    }
  }

  .btn__blue {
    background-image: linear-gradient(270deg, #057cea 0%, #00c5a0 100%);
    color: #fff;
  }

  .btn__white {
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff;
  }

  .btn__black {
    background-color: #333;
    color: #fff;
  }

  p {
    overflow-wrap: break-word !important;
  }
  .no-scrollbar::-webkit-scrollbar {
    display: none;
  }

  .no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .text-vsm {
    font-size: 1vmax;
  }

  .text-vbase {
    font-size: 1.2vmax;
  }

  .text-vlg {
    font-size: 1.6vmax;
  }

  .text-vxl {
    font-size: 1.8vmax;
  }
  .text-v2xl {
    font-size: 2vmax;
  }
}

@layer components {
  .flex-padding {
    @apply lg:px-[180px] md:px-[60px] px-[20px];
  }

  .footer-link {
    @apply text-gray-500 inline-block text-base hover:text-indigo-600 dark:text-[#797a7d];
  }
  .active {
    @apply bg-gray-50 text-indigo-600 font-medium rounded-sm;
  }

  .card {
    @apply lg:w-1/5 md:w-1/4 w-2/5;
  }

  .card-text {
    @apply text-center md:text-base text-sm;
  }
}
